Computer and communication technologies continue to advance at a rapid pace. Indeed, computer and communication technologies are involved in many aspects of a person's day. Computers commonly used include everything from hand-held computing devices to large multi-processor computer systems.
Computers are used in almost all aspects of business, industry and academic endeavors. More and more homes are using computers as well. The pervasiveness of computers has been accelerated by the increased use of computer networks, including the Internet. Most companies have one or more computer networks and also make extensive use of the Internet. The productivity of employees often requires human and computer interaction. Improvements in computers and software have been a force for bringing about great increases in business and industrial productivity.
Monitoring the efficiency of computer systems is important to anyone who relies on computers. Whether a computer or computing device is in a home or a business, it is important that the computer system operates at maximum efficiency. Monitoring requests may be sent to monitoring processes to monitor various hardware components or software programs running on the computer system. For example, a monitoring request may request an efficiency report about the hard drive of the computer system. A monitoring request may also request the amount of available disk space available on the computer system. Many other kinds of monitoring requests may include a request to monitor various aspects of computer systems.
Typically, current monitoring processes function in a monolithic environment. For example, when a single monitoring process monitors a hardware component or software program, the other monitoring processes are also active and monitor their respective hardware component or software program. When the single monitoring process completes its monitoring request, the other monitoring processes also terminate their requests. As shown by the foregoing example, generally current monitoring processes monitor all the hardware components and software programs or none at all.
Each active monitoring process increases the load on the computer system. With each load increase, the efficiency of the computer system may decrease. Under the monolithic environment of current monitoring processes, the load is increased on computer systems because unnecessary monitoring processes are constantly monitoring hardware components or software programs each time monitoring requests are deployed. As the demand for more efficient computer systems constantly increases, the desire to minimize the load on the computer system by only activating the necessary monitoring processes is also increased.
Unfortunately, known systems and methods for monitoring hardware components and software within a computer system suffer from various drawbacks. Accordingly, benefits may be realized by improved systems and methods for monitoring processes within computer systems. Some exemplary systems and methods for monitoring processes are described herein.